home *** CD-ROM | disk | FTP | other *** search
/ Quick PC 61 / Quick PC 61.iso / I386 / UDDIWEB.MSI / editmodel.aspx < prev    next >
Encoding:
Text File  |  2003-02-21  |  17.3 KB  |  569 lines

  1. <!-- ############################################################################ -->
  2. <!-- ## UDDI Services                                                          ## -->
  3. <!-- ## Copyright (c) Microsoft Corporation.  All rights reserved.             ## -->
  4. <!-- ############################################################################ -->
  5.  
  6. <%@ Page Language='C#' Inherits='UDDI.Web.UddiPage' %>
  7. <%@ Register TagPrefix='uddi' Namespace='UDDI.Web' Assembly='uddi.web' %>
  8. <%@ Register Tagprefix='uddi' Tagname='Header' Src='../controls/header.ascx' %>
  9. <%@ Register Tagprefix='uddi' Tagname='Footer' Src='../controls/footer.ascx' %>
  10. <%@ Register Tagprefix='uddi' Tagname='BreadCrumb' Src='../controls/breadcrumb.ascx' %>
  11. <%@ Register Tagprefix='uddi' Tagname='Descriptions' Src='../controls/descriptions.ascx' %>
  12. <%@ Register Tagprefix='uddi' Tagname='CategoryBag' Src='../controls/categorybag.ascx' %>
  13. <%@ Register Tagprefix='uddi' Tagname='IdentifierBag' Src='../controls/identifierbag.ascx' %>
  14. <%@ Import Namespace='UDDI' %>
  15. <%@ Import Namespace='UDDI.API' %>
  16. <%@ Import Namespace='UDDI.API.ServiceType' %>
  17. <%@ Import Namespace='System.Data' %>
  18.  
  19. <script language='C#' runat='server'>
  20.     protected TModel tModel = new TModel();
  21.     
  22.     protected bool frames = false;
  23.     protected string key;
  24.     protected string mode;
  25.     
  26.     protected void Page_Init( object sender, EventArgs e )
  27.     {
  28.         frames = ( "true" == Request[ "frames" ] );
  29.         key = Request[ "key" ];
  30.         mode = Request[ "mode" ];    
  31.         
  32.         if( null == key && "add" != mode )
  33.         {
  34. #if never
  35.             throw new UDDIException(
  36.                 ErrorType.E_fatalError,
  37.                 "Missing required parameter 'key'." );
  38. #endif
  39.             throw new UDDIException( ErrorType.E_fatalError, "UDDI_ERROR_MISSING_REQUIRED_KEY_PARAMETER" );        
  40.         }
  41.         
  42.         switch( mode )
  43.         {
  44.             case "add":
  45.                 tModel.Name = Localization.GetString( "DEFAULT_TMODEL_NAME" );
  46.                 tModel.Save();
  47.                 
  48.                 if( frames )
  49.                 {
  50.                     //
  51.                     // Reload explorer and view panes.
  52.                     //
  53.                     Response.Write(
  54.                         ClientScripts.ReloadExplorerAndViewPanes( 
  55.                             "editmodel.aspx?key=" + tModel.TModelKey + ( frames ? "&frames=true" : "" ),
  56.                             tModel.TModelKey ) );
  57.                 
  58.                     Response.End();
  59.                 }
  60.                 else
  61.                 {
  62.                     Response.Redirect( "editmodel.aspx?key=" + tModel.TModelKey + ( frames ? "&frames=true" : "" ) );
  63.                     Response.End();
  64.                 }
  65.                 
  66.                 break;
  67.                 
  68.             case "delete":
  69.                 if( null == Request[ "confirm" ] )
  70.                 {
  71.                     //
  72.                     // The user has not yet confirmed the delete operation, so display
  73.                     // a confirmation dialog.
  74.                     //
  75.                     tModel.TModelKey = key;
  76.                     tModel.Get();
  77.                     
  78.                     string message = String.Format( Localization.GetString( "TEXT_DELETE_CONFIRMATION" ), tModel.Name );
  79.                                                     
  80.                     Page.RegisterStartupScript(
  81.                         "Confirm",
  82.                         ClientScripts.Confirm(
  83.                             message,
  84.                             "editmodel.aspx?key=" + key + ( frames ? "&frames=true" : "" ) + "&mode=delete&confirm=true",
  85.                             "editmodel.aspx?key=" + key + ( frames ? "&frames=true" : "" ) ) );
  86.             
  87.                     break;
  88.                 }
  89.                 
  90.                 //
  91.                 // The user has confirmed the delete, so go ahead and delete
  92.                 // the entity.  Then reload the tree view.
  93.                 //
  94.                 tModel.TModelKey = key;
  95.                 tModel.Delete();
  96.                 
  97.                 if( frames )
  98.                 {
  99.                     Response.Write( 
  100.                         ClientScripts.ReloadExplorerAndViewPanes( 
  101.                             "edit.aspx?frames=true&tab=2",
  102.                             "_tModelList" ) );
  103.                             
  104.                     Response.End();
  105.                 }
  106.                 else
  107.                 {
  108.                     Response.Redirect( "edit.aspx?frames=false&tab=2" );
  109.                     Response.End();
  110.                 }
  111.             
  112.                 break;
  113.             
  114.             default:
  115.                 tModel.TModelKey = key;
  116.                 tModel.Get();
  117.             
  118.                 break;
  119.         }
  120.         
  121.     }
  122.     
  123.     protected void Page_Load( object sender, EventArgs e )
  124.     {    
  125.         descriptions.Initialize( tModel.Descriptions, tModel );
  126.         overviewDocDescriptions.Initialize( tModel.OverviewDoc.Descriptions, tModel );
  127.         identifierBag.Initialize( tModel.IdentifierBag, tModel );
  128.         categoryBag.Initialize( tModel.CategoryBag, tModel );
  129.         
  130.         
  131.         
  132.         authorizedName.Text = tModel.AuthorizedName;
  133.  
  134.         if( UDDI.Context.User.IsCoordinator )
  135.         {
  136.             changeOwner.Text = Localization.GetString( "BUTTON_CHANGE_OWNER" );        
  137.             changeOwner.Visible = true;
  138.         }
  139.  
  140.         tModelKey.Text = tModel.TModelKey;
  141.     }
  142.     
  143.     protected void ChangeOwner_OnClick( object sender, EventArgs e )
  144.     {
  145.         Response.Redirect( "../admin/changeowner.aspx?frames=" + ( frames ? "true" : "false" ) + "&type=tmodel&key=" + key );
  146.     }
  147.  
  148.     protected void Details_OnEdit( object sender, CommandEventArgs e )
  149.     {
  150.         tModelDetail.SetEditMode();
  151.         SetEditMode();
  152.         TextBox textBox = (TextBox)tModelDetail.ActiveControl.FindControl( "editName" );
  153.         textBox.Text = tModel.Name;
  154.         
  155.         RequiredFieldValidator requiredName = (RequiredFieldValidator)tModelDetail.ActiveControl.FindControl( "requiredName" );
  156.         requiredName.ErrorMessage = Localization.GetString( "ERROR_FIELD_REQUIRED" );    
  157.         
  158.     }
  159.  
  160.     protected void Details_OnUpdate( object sender, EventArgs e )
  161.     {
  162.         Details_OnUpdate( sender, null );
  163.     }
  164.     
  165.     protected void Details_OnUpdate( object sender, CommandEventArgs e )
  166.     {
  167.         Page.Validate();
  168.         
  169.         if( Page.IsValid )
  170.         {
  171.             TextBox textBox = (TextBox)tModelDetail.ActiveControl.FindControl( "editName" );
  172.             
  173.             tModel.Name = textBox.Text;
  174.             tModel.Save();
  175.             
  176.             tModelDetail.CancelEditMode();
  177.             CancelEditMode();
  178.             
  179.             UddiLabel label = (UddiLabel)tModelDetail.ActiveControl.FindControl( "displayName" );
  180.             
  181.             label.Text = tModel.Name;
  182.             
  183.             Page.RegisterStartupScript(
  184.                 "Reload",
  185.                 ClientScripts.ReloadExplorerPane(
  186.                     tModel.TModelKey ) );
  187.         }        
  188.     }
  189.     
  190.     protected void Details_OnCancel( object sender, CommandEventArgs e )
  191.     {
  192.         CancelEditMode();
  193.         tModelDetail.CancelEditMode();
  194.     }    
  195.  
  196.     protected void OverviewUrl_OnEdit( object sender, CommandEventArgs e )
  197.     {
  198.         overviewUrlDetail.SetEditMode();
  199.         SetEditMode();
  200.  
  201.         TextBox textBox = (TextBox)overviewUrlDetail.ActiveControl.FindControl( "editOverviewUrl" );
  202.         textBox.Text = tModel.OverviewDoc.OverviewURL;        
  203.     }
  204.  
  205.     protected void OverviewUrl_OnUpdate( object sender, EventArgs e )
  206.     {
  207.         OverviewUrl_OnUpdate( sender, null );
  208.     }
  209.     
  210.     protected void OverviewUrl_OnUpdate( object sender, CommandEventArgs e )
  211.     {
  212.         Page.Validate();
  213.         
  214.         if( Page.IsValid )
  215.         {
  216.             TextBox textBox = (TextBox)overviewUrlDetail.ActiveControl.FindControl( "editOverviewUrl" );
  217.             
  218.             tModel.OverviewDoc.OverviewURL = textBox.Text;
  219.             tModel.Save();
  220.             
  221.             overviewUrlDetail.CancelEditMode();
  222.             CancelEditMode();
  223.             
  224.             HyperLink link = (HyperLink)overviewUrlDetail.ActiveControl.FindControl( "displayOverviewUrl" );            
  225.             string url = tModel.OverviewDoc.OverviewURL;
  226.  
  227.             link.NavigateUrl = "";
  228.  
  229.             if( Utility.StringEmpty( url ) )
  230.                 link.Text = Localization.GetString( "HEADING_NONE" );
  231.             else
  232.             {
  233.                 link.Text = url;
  234.                 link.NavigateUrl = url;
  235.             }
  236.  
  237.  
  238.  
  239.         }        
  240.     }
  241.     
  242.     protected void OverviewUrl_OnCancel( object sender, CommandEventArgs e )
  243.     {
  244.         overviewUrlDetail.CancelEditMode();
  245.         CancelEditMode();
  246.     }
  247.     protected void Page_PreRender( object sender, EventArgs e )
  248.     {
  249.         breadcrumb.Initialize( BreadCrumbType.Edit, EntityType.TModel, key );
  250.         changeOwner.Enabled =  !EditMode;
  251.     }    
  252.  
  253. </script>
  254. <uddi:StyleSheetControl
  255.     Runat='server'
  256.     Default='../stylesheets/uddi.css' 
  257.     Downlevel='../stylesheets/uddidl.css' 
  258.     />
  259. <uddi:PageStyleControl 
  260.     Runat='server'
  261.     OnClientContextMenu='Document_OnContextMenu()'
  262.     Title="TITLE"
  263.     AltTitle="TITLE_ALT"
  264.     />
  265. <uddi:ClientScriptRegister
  266.     Runat='server'
  267.     Source='../client.js'
  268.     Language='javascript'
  269.     />
  270. <uddi:SecurityControl 
  271.     PublisherRequired='true' 
  272.     Runat='server' 
  273.     />
  274. <form runat='server'>
  275.  
  276. <table width='100%' border='0' height='100%' cellpadding='0' cellspacing='0'>
  277.         <asp:PlaceHolder
  278.             Id='HeaderBag'
  279.             Runat='server'
  280.             >
  281.             <tr height='95'>
  282.                 <td>
  283.                     <!-- Header Control Here -->
  284.                     <uddi:Header
  285.                         Runat='server' 
  286.                         />
  287.                 </td>
  288.             </tr>
  289.         </asp:PlaceHolder>
  290.         <tr height='100%' valign='top'>
  291.             <td>            
  292.                 <uddi:BreadCrumb 
  293.                     Id='breadcrumb' 
  294.                     Runat='server' 
  295.                     />
  296.                 <table cellpadding='10' cellspacing='0' border='0' width='100%'>
  297.                     <tr>
  298.                         <td>
  299.                             <uddi:UddiLabel Text='[[HELP_BLOCK_PUBLISH_TMODEL]]' CssClass='helpBlock' Runat='server' /><br>
  300.                             <br>
  301.                             <uddi:TabControl ID='tabs' Runat='server'>
  302.                                 <uddi:TabPage Name='TAB_DETAILS' Runat='server'>                            
  303.                                     <uddi:ContextualHelpControl 
  304.                                             Runat='Server'
  305.                                             Text='[[HELP_BLOCK_PUBLISH_TMODEL_DETAILS]]'
  306.                                             HelpFile='publish.context.publishtmodeldetails'
  307.                                             CssClass='tabHelpBlock'
  308.                                             BorderWidth='0'
  309.                                             />
  310.                                         
  311.                                     
  312.                                     <br>
  313.                                     <uddi:UddiLabel Text='[[TAG_OWNER]]' CssClass='header' Runat='server' /><br>
  314.                                     <asp:Label id='authorizedName' Runat='server' />
  315.                                     <asp:Button
  316.                                         ID='changeOwner'
  317.                                         Visible='false'
  318.                                         OnClick='ChangeOwner_OnClick'
  319.                                         Runat='server' /><br>
  320.                                     <br>
  321.                                     <uddi:UddiLabel Text='[[TAG_TMODEL_KEY]]' CssClass='header' Runat='server' /><br>
  322.                                     <asp:Label id='tModelKey' Runat='server' /><br>
  323.                                     <br>
  324.                                     <uddi:EditControl 
  325.                                             ID='tModelDetail' 
  326.                                             OnEditCommand='Details_OnEdit' 
  327.                                             OnUpdateCommand='Details_OnUpdate' 
  328.                                             OnCancelCommand='Details_OnCancel' 
  329.                                             Runat='server'>
  330.                                         <EditItemTemplate>
  331.                                             <table width='100%' cellpadding='4' cellspacing='0' border='0'>
  332.                                                 <colgroup>
  333.                                                     <col width='0*'>
  334.                                                     <col width='154'>
  335.                                                 </colgroup>                                            
  336.                                                 <tr>
  337.                                                     <td class='tableHeader'>
  338.                                                         <uddi:StringResource 
  339.                                                                 Name='HEADING_NAME' 
  340.                                                                 Runat='Server' /></td>
  341.                                                     <td class='tableHeader'>
  342.                                                         <uddi:StringResource 
  343.                                                                 Name='HEADING_ACTIONS' 
  344.                                                                 Runat='Server' /></td>
  345.                                                 </tr>
  346.                                                 <tr valign='top'>
  347.                                                     <td class='tableEditItem'>
  348.                                                         <uddi:UddiTextBox 
  349.                                                                 ID='editName' 
  350.                                                                 Width='200px'
  351.                                                                 Columns='40'
  352.                                                                 Selected='true'
  353.                                                                 OnEnterKeyPressed='Details_OnUpdate'
  354.                                                                 MaxLength='255' 
  355.                                                                 Runat='server' /><br>
  356.                                                         <asp:RequiredFieldValidator
  357.                                                                 id='requiredName'
  358.                                                                 ControlToValidate='editName'
  359.                                                                 Display='Dynamic'
  360.                                                                 Runat='server'/></td>
  361.                                                     <td class='tableEditItem'>
  362.                                                         <uddi:UddiButton 
  363.                                                                 Text='[[BUTTON_UPDATE]]' 
  364.                                                                 CommandName='update' 
  365.                                                                 Width='70px' 
  366.                                                                 CssClass='button' 
  367.                                                                 Runat='server' />
  368.                                                                  
  369.                                                         <uddi:UddiButton 
  370.                                                                 Text='<%# Localization.GetString( "BUTTON_CANCEL" )%>' 
  371.                                                                 CommandName='cancel' 
  372.                                                                 Width='70px' 
  373.                                                                 CssClass='button' 
  374.                                                                 CausesValidation='false' 
  375.                                                                 Runat='server' /></td>
  376.                                                 </tr>
  377.                                             </table>                                        
  378.                                         </EditItemTemplate>
  379.  
  380.                                         <ItemTemplate>
  381.                                             <table width='100%' cellpadding='4' cellspacing='0' border='0'>
  382.                                                 <colgroup>
  383.                                                     <col width='0*'>
  384.                                                     <col width='154'>
  385.                                                 </colgroup>                                            
  386.                                                 <tr>
  387.                                                     <td class='tableHeader'>
  388.                                                         <uddi:StringResource 
  389.                                                                 Name='HEADING_NAME' 
  390.                                                                 Runat='Server' /></td>
  391.                                                     <td class='tableHeader'>
  392.                                                         <uddi:StringResource 
  393.                                                                 Name='HEADING_ACTIONS' 
  394.                                                                 Runat='Server' /></td>
  395.                                                 </tr>
  396.                                                 <tr valign='top'>                                                
  397.                                                     <td class='tableItem'>
  398.                                                         <uddi:UddiLabel 
  399.                                                                 ID='displayName' 
  400.                                                                 Text='<%# tModel.Name %>' 
  401.                                                                 Runat='server' /></td>
  402.                                                     <td class='tableItem'>
  403.                                                         <uddi:UddiButton 
  404.                                                                 Text='[[BUTTON_EDIT]]'
  405.                                                                 EditModeDisable='true' 
  406.                                                                 CommandName='edit' 
  407.                                                                 Width='70px' 
  408.                                                                 CssClass='button' 
  409.                                                                 Runat='server' /></td>
  410.                                                 </tr>
  411.                                             </table>                                        
  412.                                         </ItemTemplate>                                            
  413.                                     </uddi:EditControl><br>
  414.                                     <br>
  415.                                     <uddi:Descriptions 
  416.                                             ID='descriptions' 
  417.                                             Runat='server' />
  418.                                 </uddi:TabPage>
  419.                                 
  420.                                 <uddi:TabPage Name='TAB_IDENTIFIERS' Runat='server'>                            
  421.                                     <uddi:ContextualHelpControl 
  422.                                             Runat='Server'
  423.                                             Text='[[HELP_BLOCK_PUBLISH_TMODEL_IDENTIFIERS]]'
  424.                                             HelpFile='publish.context.publishtmodelidentifiers'
  425.                                             CssClass='tabHelpBlock'
  426.                                             BorderWidth='0'
  427.                                             />
  428.                                         
  429.                                     
  430.                                     <br>
  431.                                     <uddi:IdentifierBag ID='identifierBag' Runat='Server' />
  432.                                 </uddi:TabPage>
  433.                                 
  434.                                 <uddi:TabPage Name='TAB_CATEGORIES' Runat='server'>                            
  435.                                     <uddi:ContextualHelpControl 
  436.                                             Runat='Server'
  437.                                             Text='[[HELP_BLOCK_PUBLISH_TMODEL_CATEGORIES]]'
  438.                                             HelpFile='publish.context.publishtmodelcategories'
  439.                                             CssClass='tabHelpBlock'
  440.                                             BorderWidth='0'
  441.                                             />
  442.                                         
  443.                                     
  444.                                     
  445.                                     <br>
  446.                                     <uddi:CategoryBag ID='categoryBag' Runat='server' />
  447.                                 </uddi:TabPage>
  448.                                 
  449.                                 <uddi:TabPage Name='TAB_OVERVIEWDOC' Runat='server'>                            
  450.                                     <uddi:ContextualHelpControl 
  451.                                             Runat='Server'
  452.                                             Text='[[HELP_BLOCK_PUBLISH_TMODEL_OVERVIEWDOCS]]'
  453.                                             HelpFile='publish.context.publishtmodeloverviewdocument'
  454.                                             CssClass='tabHelpBlock'
  455.                                             BorderWidth='0'
  456.                                             />
  457.                                     
  458.                                     <br>
  459.                                     <uddi:EditControl 
  460.                                             id="overviewUrlDetail" 
  461.                                             OnEditCommand='OverviewUrl_OnEdit' 
  462.                                             OnUpdateCommand='OverviewUrl_OnUpdate' 
  463.                                             OnCancelCommand='OverviewUrl_OnCancel' 
  464.                                             Runat='server' >
  465.                                         <EditItemTemplate>
  466.                                             <table width='100%' cellpadding='4' cellspacing='0' border='0'>
  467.                                                 <colgroup>
  468.                                                     <col width='0*'>
  469.                                                     <col width='154'>
  470.                                                 </colgroup>                                            
  471.                                                 <tr>
  472.                                                     <td class='tableHeader'>
  473.                                                         <uddi:StringResource Name='HEADING_OVERVIEW_URL' Runat='Server' /></td>
  474.                                                     <td class='tableHeader'>
  475.                                                         <uddi:StringResource Name='HEADING_ACTIONS' Runat='Server' /></td>
  476.                                                 </tr>
  477.                                                 <tr valign='top'>
  478.                                                     <td class='tableEditItem'>
  479.                                                         <uddi:UddiTextBox 
  480.                                                                 id='editOverviewUrl' 
  481.                                                                 Columns='40'
  482.                                                                 Width='200px'
  483.                                                                 Selected='true'
  484.                                                                 OnEnterKeyPressed='OverviewUrl_OnUpdate'
  485.                                                                 CssClass='textBox' 
  486.                                                                 MaxLength='255' 
  487.                                                                 Runat='server'/></td>
  488.                                                     <td class='tableEditItem'>
  489.                                                         <uddi:UddiButton 
  490.                                                                 Text='[[BUTTON_UPDATE]]' 
  491.                                                                 CommandName='update' 
  492.                                                                 Width='70px' 
  493.                                                                 CssClass='button' 
  494.                                                                 Runat='server' /> 
  495.                                                         <uddi:UddiButton 
  496.                                                                 Text='[[BUTTON_CANCEL]]' 
  497.                                                                 CommandName='cancel' 
  498.                                                                 Width='70px' 
  499.                                                                 CssClass='button' 
  500.                                                                 CausesValidation='false' 
  501.                                                                 Runat='server' /></td>
  502.                                                 </tr>
  503.                                             </table>                                        
  504.                                         </EditItemTemplate>
  505.                                             
  506.                                         <ItemTemplate>
  507.                                             <table width='100%' cellpadding='4' cellspacing='0' border='0'>
  508.                                                 <colgroup>
  509.                                                     <col width='0*'>
  510.                                                     <col width='154'>
  511.                                                 </colgroup>                                            
  512.                                                 <tr>
  513.                                                     <td class='tableHeader'>
  514.                                                         <uddi:StringResource 
  515.                                                                 Name='HEADING_OVERVIEW_URL' 
  516.                                                                 Runat='Server' /></td>
  517.                                                     <td class='tableHeader'>
  518.                                                         <uddi:StringResource 
  519.                                                                 Name='HEADING_ACTIONS' 
  520.                                                                 Runat='Server' /></td>
  521.                                                 </tr>
  522.                                                 <tr valign='top'>                                                
  523.                                                     <td class='tableItem'>
  524.                                                         <asp:HyperLink 
  525.                                                             ID='displayOverviewUrl' 
  526.                                                             Text='<%# Utility.StringEmpty( tModel.OverviewDoc.OverviewURL ) ? Localization.GetString( "HEADING_NONE" ) : tModel.OverviewDoc.OverviewURL %>' 
  527.                                                             NavigateUrl='<%# Utility.StringEmpty( tModel.OverviewDoc.OverviewURL ) ? Localization.GetString( "HEADING_NONE" ) : tModel.OverviewDoc.OverviewURL %>' 
  528.                                                             Target="_new"
  529.                                                             Runat='server'/>
  530.                                                         
  531.                                                     <td class='tableItem'>
  532.                                                         <uddi:UddiButton 
  533.                                                                 Text='[[BUTTON_EDIT]]' 
  534.                                                                 CommandName='edit' 
  535.                                                                 Width='70px'
  536.                                                                 EditModeDisable='true'
  537.                                                                 CssClass='button' 
  538.                                                                 Runat='server' />
  539.                                                             
  540.                                                     </td>
  541.                                                 </tr>
  542.                                             </table>    
  543.                                         </ItemTemplate>
  544.                                     </uddi:EditControl>
  545.                                     <br>
  546.                                     <uddi:Descriptions ID='overviewDocDescriptions' Runat='server' />
  547.                                 </uddi:TabPage>
  548.                             </uddi:TabControl>
  549.                         </td>
  550.                     </tr>
  551.                 </table>
  552.             </td>
  553.         </tr>
  554.         <asp:PlaceHolder 
  555.             Id='FooterBag'
  556.             Runat='server'
  557.             >
  558.             <tr height='95'>
  559.                 <td>
  560.                     <!-- Footer Control Here -->
  561.                     <uddi:Footer
  562.                         Runat='server' 
  563.                         />
  564.                 </td>
  565.             </tr>
  566.         </asp:PlaceHolder>
  567.     </table> 
  568. </form>
  569.